package com.zjdiepu.www.security.sign.lang;

import java.util.Comparator;
/**
 * 类描述:验签排序规则 <br/>     
 * 项目名称:zjdiepu-client <br/> 
 * 类名称:SecurityComparator <br/>     
 * 创建人:xiongxiaotun <br/> 
 * 创建时间:2017年8月15日 下午3:51:13  <br/>   
 * 修改人:xiongxiaotun <br/> 
 * 修改时间: 2017年8月15日 下午3:51:13   <br/>  
 * 修改备注:   <br/> 
 * @version V1.0   <br/>
 */
public class SecurityComparator<T> implements Comparator<T> {

	@Override
	public int compare(T o1, T o2) {
		ComparatorKey comparatorKey1 = (ComparatorKey) o1;
		ComparatorKey comparatorKey2 = (ComparatorKey) o2;
		Integer hash1 = HashCodeProvider.StringHashCode(comparatorKey1
				.getCompatatorValue());
		Integer hash2 = HashCodeProvider.StringHashCode(comparatorKey2
				.getCompatatorValue());

		int compareHash = hash1.compareTo(hash2);
		if (compareHash == 0) {
			return comparatorKey1.getCompatatorValue().compareTo(
					comparatorKey2.getCompatatorValue());
		}
		return compareHash;
	}
}
